// import Vue from "vue";
import axios from 'axios'
Date.prototype.Format = function (fmt) { //author: meizz
    var o = {
        "M+": this.getMonth() + 1, //月份
        "d+": this.getDate(), //日
        "h+": this.getHours(), //小时
        "m+": this.getMinutes(), //分
        "s+": this.getSeconds(), //秒
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度
        "S": this.getMilliseconds() //毫秒
    };
    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
};
function formate(fmt, data) {
    var data = data ? data : 'yyyy-MM-dd hh:mm:ss'
    return (new Date(fmt)).Format(data)
}
Vue.prototype.$formate = formate

const service = axios.create({
    baseURL: process.env.BASE_API, // api的base_url
    // timeout: 12000 // request timeout
})
class Fetch{
    post(url,params,config){
        let post = new Promise((reslove,reject)=>{
            service.post(url, params, config).then(res => {
                let data = res.data
                if (data.status) {
                    //  if (data.code == 0) {
                    reslove(data)
                    //  }else{
                    //     reject(data)                         
                    //  }
                 }else{
                    reject(data)
                 }
             })
             
         })
         return post
     }
    get(url, params) {
         let get = new Promise((reslove, reject) => {
             service.get(url, params).then(res => {
                let data = res.data                 
                if (data.status) {
                    // if (data.code == 0) {
                         reslove(data)
                    // } else {
                        //  reject(data)
                    // }
                } else {
                    reject(data)
                }
            })

        })
        return get
     }
 }

Vue.prototype.$fetch = new Fetch()

